package cn.iocoder.yudao.module.digital.controller.admin.competition.vo;

import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 竞赛分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CompetitionPageReqVO extends PageParam {

    @Schema(description = "竞赛名字", example = "张三")
    private String name;

    @Schema(description = "比赛级别(A+,A等等，字典)", example = "1")
    private Integer type;

    @Schema(description = "主办方（字典）")
    private Integer organizer;

    @Schema(description = "主办方（不在字典里面）")
    private String organizerOther;

    @Schema(description = "获奖级别（省级，国家级，校级）")
    private Integer level;

    @Schema(description = "第一指导老师")
    private String author;

    @Schema(description = "成员")
    private String member;

    @Schema(description = "竞赛负责人")
    private String competitionOrganizer;

    @Schema(description = "贡献率数组，0号元素是负责人，后面的是成员")
    private String rate;

    @Schema(description = "获奖时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] competitionTime;

    @Schema(description = "排名")
    private Integer rank;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

    @Schema(description = "作品名字")
    private String reserved1;

    @Schema(description = "参赛学生")
    private String reserved2;

}